Step 1: Create GitHub Repo with necessary folders for partners to collaborate 00 Doc contains the .Rmd and HTML files 01 Data contains the data set that was worked with 02 Shiny contains the server and user interface (ui) for the Shiny App Step 2: Use an interesting data set with data that may be easily and interestingly manipulated Step 3: Import the csv file into SQL Developer Step 4: Save your app’s server.R and ui.R script inside the 02 Shiny folder Step 5: Launch the shinyApp with runApp and exit by clicking escape
Below is the dataset and first ten rows
require("jsonlite")
## Loading required package: jsonlite
##
## Attaching package: 'jsonlite'
##
## The following object is masked from 'package:utils':
##
## View
require("RCurl")
## Loading required package: RCurl
## Loading required package: bitops
require(ggplot2)
## Loading required package: ggplot2
require(dplyr)
## Loading required package: dplyr
##
## Attaching package: 'dplyr'
##
## The following objects are masked from 'package:stats':
##
## filter, lag
##
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
df <- data.frame(fromJSON(getURL(URLencode('skipper.cs.utexas.edu:5001/rest/native/?query="select * from edudata"'),httpheader=c(DB='jdbc:oracle:thin:@sayonara.microlab.cs.utexas.edu:1521:orcl', USER='C##cs329e_gmg954', PASS='orcl_gmg954', MODE='native_mode', MODEL='model', returnDimensions = 'False', returnFor = 'JSON'), verbose = TRUE)), ignoreNULL = FALSE)
head(df)
## COUNTRY_NAME COUNTRY_CODE
## 1 Aruba ABW
## 2 Aruba ABW
## 3 Aruba ABW
## 4 Aruba ABW
## 5 Aruba ABW
## 6 Aruba ABW
## INDICATOR_NAME
## 1 Lower secondary school starting age (years)
## 2 Lower secondary completion rate, female (% of relevant age group)
## 3 Lower secondary completion rate, male (% of relevant age group)
## 4 Lower secondary completion rate, total (% of relevant age group)
## 5 Secondary education, duration (years)
## 6 Secondary education, pupils
## INDICATOR_CODE X2000 X2001 X2002
## 1 SE.SEC.AGES 12 12 12
## 2 SE.SEC.CMPT.LO.FE.ZS 96.4229965209961 100.603302001953 100.29239654541
## 3 SE.SEC.CMPT.LO.MA.ZS 93.1087036132812 95.9337005615234 94.1003036499023
## 4 SE.SEC.CMPT.LO.ZS 94.7530975341797 98.2667999267578 97.2099990844727
## 5 SE.SEC.DURS 5 5 5
## 6 SE.SEC.ENRL 6178 6428 6757
## X2003 X2004 X2005 X2006
## 1 12 12 12 12
## 2 94.1010971069336 92.4527969360352 87.5162963867188 null
## 3 84.8787002563477 82.5789031982422 87.6658020019531 null
## 4 89.5258026123047 87.5595016479492 87.5903015136719 null
## 5 5 5 5 5
## 6 6869 6973 7116 7439
## X2007 X2008 X2009 X2010 X2011 X2012 X2013 X2014
## 1 12 12 12 12 12 12 12 12
## 2 89.7855987548828 null 99.6067962646484 null null null null null
## 3 88.1463012695312 null 92.8752975463867 null null null null null
## 4 88.9660034179688 null 96.1911010742188 null null null null null
## 5 5 5 5 5 5 5 5 5
## 6 7853 7270 7439 7342 7378 8377 null null
## X2015 ignoreNULL
## 1 null FALSE
## 2 null FALSE
## 3 null FALSE
## 4 null FALSE
## 5 null FALSE
## 6 null FALSE
Education is one of the most powerful instruments for reducing poverty and inequality and lays a foundation for sustained economic growth. The World Bank compiles data on education inputs, participation, efficiency, and outcomes. This data on education was compiled by the United Nations Educational, Scientific, and Cultural Organization (UNESCO) Institute for Statistics from official responses to surveys and from reports provided by education authorities in each country.
Below are all of the key indicators from our project:
require("jsonlite")
require("RCurl")
require(ggplot2)
require(dplyr)
df <- data.frame(fromJSON(getURL(URLencode('skipper.cs.utexas.edu:5001/rest/native/?query="select distinct(indicator_name) from edudata order by indicator_name desc"'),httpheader=c(DB='jdbc:oracle:thin:@sayonara.microlab.cs.utexas.edu:1521:orcl', USER='C##cs329e_gmg954', PASS='orcl_gmg954', MODE='native_mode', MODEL='model', returnDimensions = 'False', returnFor = 'JSON'), verbose = TRUE)), ignoreNULL = FALSE)
head(df)
## INDICATOR_NAME
## 1 Unemployment, total (% of total labor force) (modeled ILO estimate)
## 2 Unemployment, male (% of male labor force) (modeled ILO estimate)
## 3 Unemployment, female (% of female labor force) (modeled ILO estimate)
## 4 Trained teachers in primary education, male (% of male teachers)
## 5 Trained teachers in primary education, female (% of female teachers)
## 6 Trained teachers in primary education (% of total teachers)
## ignoreNULL
## 1 FALSE
## 2 FALSE
## 3 FALSE
## 4 FALSE
## 5 FALSE
## 6 FALSE
This box plot shows the student-teacher ratios for the years 2000 and 2012 for both primary and secondary schools. We can see that in both years the student-teacher ratio for secondary schools is smaller than primary schools. We also can see that there has been an imporvement in student teacher ratios from 2000 to 2012. The interquartiles range has also decreased which means there is less spread in the data.
This histogram shows the student teacher ratio’s in 2000. This graph shows that the student teacher ratios have a left skewed model. Most countries fall under the 10-30 ratio bin. However, some countries push extremely high ratios of 60 students per teacher. One country has a student teacher ratio of under 10.
(Also on Dashboard)
This scatterplot juxtaposes student teacher ratios from primary education to secondary education. From the years 2000 to 2012, we can see that values on the plot have a linear trend. The values that lie under the trend line depict an overall decrease in student teacher ratios (which is good). The average student teacher ratio for primary education is 27.7 and secondary educaiton is 18.2. This is expected because higher education usually tends to have more teachers per student.
SHINY SCATTER PLOT: https://graysong.shinyapps.io/Final_Project
This crosstab shows which countries have some of the higher pupil-teacher ratio’s. Central African Republic has the highest ratio with about 80 students per teacher in primary education and 68 students per teacher in secondary education. This cross tab only shows those with ratios greater than 45 in primary education. The color represents the mins and maxes of the data displayed.
This map shows geographically where the lowest and highest pupil teacher ratio’s exist. We can see that the highest values come from African nations with other high values in Central America and South Eastern Asian countries. Europe, US, and East Asia have some of the lowest ratio’s, likely due to greatest economic development.
This scatter plot shows the unemployment rates of several different countries. There are three plots which show male, female, and total unemployment rates of the countries. The X axis shows the unemployement rates for 2002 and the Y axis shows the unemployment rates for 2012. This means that the data above the line (Red), have increased unemployment rates and the data points below the line (Green) have decreased in unemployment rates. Female rates were more steady while male rate provided large variability.
This map shows us the distribution of children who are not in primary school. The map shows that the vast majority of countries have very low rates of children out of school. There are however several somewhat surprising outliers. The United States has a much larger population of children out of school than any other North American or European country. While african countries do lag behind most other contients, Nigeria has a huge out-of-school child population, relativley speaking.
This graph shows a trend of countries that are classified by the United Nations as “Least Developed” in which more children are finishing their primary education more and more as the years go on. However, it appears that starting in 2011, the rate of children finishing their primary education seemes to be plateauing in the high 60% range. Before this shift, there are constant linear growth in this area. This may also shed some light on these countries and their corresponding wealth.
SHINY BAR CHART: https://graysong.shinyapps.io/Final_Project
This cross-tab shows the percentage of money alloted to education staff compenation that comes from total public institution expenditures in primary, secondary and tertiary public institutions. We can see that the largest percentages given to the education staff are in Niger, Guyana and Cameroon. This may be indicative of their overall economy. Niger, for example, has a relativley low spending percentage on primary education at 10%, but then spends a relativley huge amount on secondary education at 25%. Another interesting case is Guyana, which spends low amounts on primary and secondary education, but spends huge amounts on their tertiary education.
This cross-tab shows the literacy rates amongst various countries’ male and female populations. Our results point to decreasing and increase percentages. For example, the Central Afrifan Republic has the largest decreasing literacy rate while Ghana has the largest increasing literacy rates. It can also be observed that the increases in literacy rates are larger in the female populations than in the male populations. This could be due to social change or more women entering school.
SHINY CROSS TAB: https://graysong.shinyapps.io/Final_Project
This plot shows the average percentage of GDP per capita that is spent per student. These percentages are plotted as individual data points across the the years 2006 to 2012. It is intersting to see that government spending has only increased in tertiary education and remained constant in primary and secondary institutions. The importance of higher education has probably increased from 2006 to 2012.
This visualization plots the gross intake ratio for first graders in Niger from the years 2000 to 2013. There is an increasing trend in intake and peaks in the year 2009. It is quite possible that in 2009 more money was allocated to Niger’s primary education, thus they were able to teach more primary students with an increased education budget.